Keep task log selection stable while dragging - #71155
Open
Andrushika wants to merge 2 commits into
Open
Conversation
Chrome can resolve the drag focus to the start of the absolutely positioned virtualized log block when the pointer moves below the viewport, reversing the selection.
Andrushika
force-pushed
the
fix-log-viewer-selection-drag
branch
from
August 6, 2026 12:31
10d752e to
97e5aaf
Compare
Andrushika
marked this pull request as ready for review
August 6, 2026 13:47
Andrushika
requested review from
bbovenzi,
choo121600,
guan404ming,
pierrejeambrun,
ryanahamilton,
shubhamraj-git and
vatsrahul1001
as code owners
August 6, 2026 13:47
Contributor
Author
|
Close and open PR again to re-trigger CI. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The log viewer virtualizes rows and positions each mounted row absolutely. (
position: absolute)When a downward drag passes the last mounted row, including trailing space inside the viewer, Chrome can move the selection focus to the start of the virtualized block. The selection then reverses instead of following autoscroll.
2026-08-06.7.42.03.mov
What
Use the earlier of the viewer bottom and the last mounted row bottom as the downward drag boundary, then keep the focus on the last mounted row while a left-button drag stays past it. Pointer, selection, and scroll events share one pending animation frame. Upward selection stays native.
2026-08-06.9.43.08.mov
related: #68846, #71148
Was generative AI tooling used to co-author this PR?
Generated-by: Codex (GPT-5) following the guidelines